﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using UnityEngine;
namespace TinySkill
{

    //表示一个战斗单位
    public class GameBattler : MonoBehaviour
    {
        //表示单个技能
        Skill skill;

        //正在执行的技能过程
        Effect effect;

        //音效播放组件
        public AudioSource audioSource;

        public GameBattler()
        {
            //初始化技能
            skill = new Skill();
            skill.Init(1);
        }

        private void Start()
        {
            audioSource = GetComponent<AudioSource>();
        }

        //使用技能
        //使用成功则返回真，否则为假
        public bool UseSkill()
        {
            if (skill.cd > 0 || effect != null)
            {
                return false;
            }

            //开始处理技能逻辑
            effect = new Effect();
            effect.Init(this, skill);

            return true;
        }

        public void Update()
        {
            skill.Update(Time.deltaTime);

            if (effect != null)
            {
                //如果执行完毕，则返回真
                if (effect.Update(Time.deltaTime))
                {
                    effect = null;
                }
            }
        }
    }
}